<?php defined('SYSPATH') OR die('Kein direkter Zugriff erlaubt.');

class Group_Controller extends Template_Controller {
	
	public $template = 'template';
	
	private $group_model;

	private $register_view;
	private $edit_view;
	private $delete_view;
	
	public function __construct() {
		parent::__construct();
		
		$this->group_model		= new Group_Model;		
	}
	
	// wird beim Controlleraufruf automatisch aufgerufen / Routingentscheidung
	public function index() {
		$this->register();
	}

	// VIEWS aufrufen -----------------------------------------------
	
	public function register() {
		// TODO: Ergebnisseite einpflegen (AJAX?)
		$this->template->title 		= "Tippgruppe anlegen";
		$this->template->content 	= new View('group_register');
	}
	
	public function edit($id) {
		$this->template->title 		= "Tippgruppe bearbeiten";
		$this->template->content 	= new View('group_edit');
		
		$group_data = $this->group_model->read($id);
		
		$this->template->content->gruppenname = $group_data[0]->gruppenname;
		$this->template->content->beschreibung = $group_data[0]->beschreibung;
		$this->template->content->groupid = $id;
		
	}
	
	public function delete() {
		$this->delete_view->render(TRUE);
	}

	// MODELS aufrufen ----------------------------------------------
	
	/* Registriert eine neue Gruppe anhand der aus der View gewonnenen Daten im DAO
	 * 
	 */
	public function do_register() {
		$public = FALSE;
		if($this->input->post('public') == 'public') {
			$public = TRUE;
		}
		
		$group_data=array(
			'gruppenname' 	=> $this->input->post('gruppenname'),
			'beschreibung'	=> $this->input->post('beschreibung'),
			'besitzer_id'	=> 1,			// TODO: Daten aus dem Usermodel/Global einpflegen
			'moderatoren'	=> '',
			'public'		=> $public,
			'timestamp_register' => time(),
			'gruppenlogo'	=> ''
		);
		
		$this->group_model->create($group_data);
		url::redirect('group');
	}
	
	public function do_edit() {
		$public = FALSE;
		if($this->input->post('public') == 'public') {
			$public = TRUE;
		}
		
		$group_data = array(
		
			'gruppenname' 	=> $this->input->post('gruppenname'),
			'beschreibung'	=> $this->input->post('beschreibung'),
			'besitzer_id'	=> 1,
			'moderatoren'	=> '',
			'public'		=> $public,
			'timestamp_register' => time(),
			'gruppenlogo'	=> ''
		);
		
		$this->group_model->update($this->input->post('id'), $group_data);
		url::redirect('group');
	}
	
	public function do_delete($id) {
		$this->group_model->delete($id);
		url::redirect('group');
	}
}

?>